    ' ---------------------------------------------------------------------
    '  SUPER DE-CONVOLUTION - WITHOUT MATRIX - TYPE 1
    '----------------------------------------------------------------------
    Private Sub SuperDeconvolution_WM1(ByVal FirstBin As Int32, _
                                        ByVal LastBin As Int32, _
                                        ByVal ArraySource() As Single, _
                                        ByRef ArrayDest() As Single, _
                                        ByRef MaxBinValue As Single, _
                                        ByRef BinWithMaxValue As Int32)

        Dim nr As Int32 = SelectedIsotopes.Length
        If nr > 0 Then
    
            Dim sigma As Single = mDeconvSize + 0.5F ' KeV
            Dim Ni As Single
            Dim Ei As Single
            Dim RowEnergy As Single
            Dim GaussNorm As Single
            Dim RowEnergyB As Single
            Dim n(nr - 1) As Single

            ' --------------------------------------------------------------------------------- subtraction
            For row As Int32 = 0 To nr - 1
                RowEnergy = SelectedIsotopes(row).Energy
                For bin As Int32 = FirstBin To LastBin
                    Ni = ArrayDest(bin)
                    Ei = BinToEnergy(bin)
                    GaussNorm = GaussianNorm(Ei, RowEnergy, sigma)
                    n(row) += Ni * GaussNorm
                    For rowB As Int32 = 0 To nr - 1
                        RowEnergyB = SelectedIsotopes(rowB).Energy
                        If rowB <> row Then
                            'n(row) -= Ni * GaussNorm * GaussianNorm(Ei, RowEnergyB, sigma)
                            n(row) += Ni * GaussNorm * GaussNorm * GaussianNorm(Ei, RowEnergyB, sigma)
                        End If
                    Next
                Next
            Next

            ' --------------------------------------------------------------------------------- row energies
            'For row As Int32 = 0 To nr - 1
            '    RowEnergy = SelectedIsotopes(row).Energy
            '    For bin As Int32 = FirstBin To LastBin
            '        Ni = ArrayDest(bin)
            '        n(row) += Ni * GaussianNorm(BinToEnergy(bin), RowEnergy, sigma)
            '    Next
            'Next

            ' ----------------------------------------------------- rabbit extension 
            Dim sigmac As Single = mGaussianSize + 0.5F
            Dim Qc As Single = SigmaToQ(sigmac)
            For i As Int32 = FirstBin To LastBin
                Ei = BinToEnergy(i)
                Ni = 0
                For row As Int32 = 0 To nr - 1
                    Ni = Ni + n(row) / Qc * GaussianNorm(Ei, SelectedIsotopes(row).Energy, sigmac)
                Next
                ArrayDest(i) = Ni
            Next

            ' ----------------------------------------------------- gaussian test (rabbit must be commented)
            'RowEnergy = SelectedIsotopes(0).Energy
            'For bin As Int32 = FirstBin To LastBin
            '    Ni = ArrayDest(bin)
            '    Ei = BinToEnergy(bin)
            '    ArrayDest(bin) = Ni * GaussianNorm(Ei, RowEnergy, sigma)
            'Next
        End If
    End Sub